<?php
/*
 * Copyright (c) 2008 Carlos Romel Pereira da Silva <carlos.romel@gmail.com>
 * Copyright (c) 2008 Jo�o Paulo Cirino Silva de Novais <joaopaulonovais@gmail.com>
 *
 * View
 */

class Perfil_acessoView extends Base {

    private $funcionalidades;
    private $perfil_acesso_funcionalidades;
    private $campo;
    private $descricao;

    function __construct($modelo) {

        parent::__construct($modelo);
    }

    function setFuncionalidades($funcionalidades) {

        $this->funcionalidades = $funcionalidades;
    }

    function setPerfil_acesso_funcionalidades($perfil_acesso_funcionalidades) {

        $this->perfil_acesso_funcionalidades = $perfil_acesso_funcionalidades;
    }

    function listar_funcionalidades() {

        $this->modelo->setCurrentBlock("Relacao_Perfil_Acesso_Funcionalidade");

        if ($this->perfil_acesso_funcionalidades) {

            foreach ($this->perfil_acesso_funcionalidades as $registro) {

                $this->modelo->setVariable("cod_perfil_acesso_funcionalidade", $registro["cod_perfil_acesso_funcionalidade"]);
                $this->modelo->setVariable("tit_funcionalidade",               $registro["tit_funcionalidade"]);

                if (isset($registro["ind_inclusao"])) {
                    if ($registro["ind_inclusao"] == "S") {
                        $this->modelo->setVariable("ind_inclusao", "Sim");
                    } else {
                        $this->modelo->setVariable("ind_inclusao", "Não");
                    }
                }

                if (isset($registro["ind_alteracao"])) {
                    if ($registro["ind_alteracao"] == "S") {
                        $this->modelo->setVariable("ind_alteracao", "Sim");
                    } else {
                        $this->modelo->setVariable("ind_alteracao", "Não");
                    }
                }

                if (isset($registro["ind_exclusao"])) {
                    if ($registro["ind_exclusao"] == "S") {
                        $this->modelo->setVariable("ind_exclusao", "Sim");
                    } else {
                        $this->modelo->setVariable("ind_exclusao", "Não");
                    }
                }
                
                $this->modelo->parseCurrentBlock();
            }

            $this->modelo->setVariable("css_relacao_perfil_acesso_funcionalidade", "visivel");
        } else {

            $this->modelo->setVariable("css_relacao_perfil_acesso_funcionalidade", "invisivel");
        }
    }

    function consultar($registros) {

        if (Base::isAplicacao()) {

            $this->modelo->touchBlock("Gravar");
        }

        foreach ($registros as $registro) {

            $this->modelo->setCurrentBlock("Perfil_acesso");

            $this->modelo->setVariable("cod_perfil_acesso",       $registro["cod_perfil_acesso"]);
            $this->modelo->setVariable("nom_perfil_acesso",       $registro["nom_perfil_acesso"]);

            $this->modelo->setVariable("modulo", "Perfil_acesso");
            $this->modelo->parseCurrentBlock();
        }

        $this->modelo->setVariable("modulo", "Perfil_acesso");

        return $this->modelo;
    }

    function editar($registro) {

        if (isset($registro["cod_perfil_acesso"])) {

            $this->modelo->touchBlock("Remover");
            
        }

        if (Base::isAplicacao()) {

            $this->modelo->touchBlock("Gravar");

            if(isset($registro["cod_perfil_acesso"])) {
                
                Base::preencherCaixaSelecao("Funcionalidade", $this->funcionalidades, isset($registro["cod_funcionalidade"])? $registro["cod_funcionalidade"]: null);
                
                $this->listar_funcionalidades();
            }
        }

        $this->modelo->setVariable("cod_secretariado",        isset($registro["cod_secretariado"])? $registro["cod_secretariado"]: null);
        $this->modelo->setVariable("nom_pessoa_secretariado", isset($registro["nom_pessoa_secretariado"])? $registro["nom_pessoa_secretariado"]: null);
        $this->modelo->setVariable("cod_perfil_acesso",       isset($registro["cod_perfil_acesso"])? $registro["cod_perfil_acesso"]: null);
        $this->modelo->setVariable("nom_perfil_acesso",       isset($registro["nom_perfil_acesso"])? $registro["nom_perfil_acesso"]: null);
        $this->modelo->setVariable("txt_perfil_acesso",       isset($registro["txt_perfil_acesso"])? $registro["txt_perfil_acesso"]: null);
        
        if(isset($registro["ind_administrador"])) {
            if ($registro["ind_administrador"] == "S") {
                $this->modelo->setVariable("selecionado", "checked");
            }
        }

        $this->modelo->setVariable("modulo", "Perfil_acesso");

        return $this->modelo;
    }
}

?>
